# pip install requests
import requests

# 发送get请求
url = 'http://127.0.0.1:8787/coupApply/cms/goodsList'
header = {'Content-Type': 'application/x-www-formurlencoded;charset=UTF-8'}
req_data = {
    "msgType": "getHandsetListOfCust",
    "page": 1,
    "size": 20
}

res = requests.get(url=url, params=req_data, headers=header)
# 响应结果，默认返回接口的一个状态码
print(res.status_code)
# 获取接口响应内容（文本）
print(res.text)
# 获取接口响应内容（json格式）
print(res.json())

# 发起post请求--数据表单提交
url_login = 'http://127.0.0.1:8787/dar/user/login'
header_login = {'Content-Type': 'application/x-www-formurlencoded;charset=UTF-8'}
data_login = {
    "user_name": "test01",
    "passwd": "admin123"
}

res_login = requests.post(url=url_login, data=data_login)
# 响应结果
print(res_login.status_code)
# 获取接口响应内容（文本）
print(res_login.text)
# 获取接口响应内容（json格式）
print(res_login.json())
# 如果接口返回信息出现\\u767b格式时，返回的是Unicode编码，这时就需要手动去转换一下
# print(res_login.text.encode().decode('unicode_escape'))


# post请求---json数据格式提交
url_detail = 'http://127.0.0.1:8787/coupApply/cms/productDetail'
header_detail = {'Content-Type': 'application/json;charset=UTF-8'}
data_detail = {
    "pro_id": "33809635011",
    "page": 1,
    "size": 20
}

res_detail = requests.post(url=url_detail, json=data_detail, headers=header_detail)
# 响应结果
print(res_detail.status_code)
# 获取接口响应内容（文本）
print(res_detail.text)
# 获取接口响应内容（json格式）
print(res_detail.json())

# 会话对象（session），使用会话对象可以在多个请求之间保持状态，假如保持登录状态
# 创建一个会话
session = requests.Session()
# 发起请求操作
res = session.get(url=url, params=req_data)
print(res.text)

res_2 = session.post(url=url_detail, json=data_detail, headers=header_detail)
print(res_2.text)

# 直接调用request方法去发起接口接口
method = 'post'
res = requests.request(method=method, url=url_detail, json=data_detail, headers=header_detail)
print(res.text)
